package com.yida.gwj.config.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 计算金额算法对象 common_calculate_data
 *
 * @author lqq
 * @date 2022-12-13
 */
public class GwjConfCalculateDataDTO implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 主键ID
	 */
	private Long calculateDataId;

	/**
	 * 计算标准ID
	 */
	private Long calculateTypeId;

	/**
	 * 地区ID
	 */
	private Long areaId;

	/**
	 * 楼栋类型ID
	 */
	private Long buildTypeId;

	/**
	 * 楼栋类型名称
	 */
	private String buildTypeName;

	/**
	 * 金额
	 */
	private BigDecimal calculateVal;

	/**
	 * 开始时间
	 */
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date startTime;

	public String getBuildTypeName() {
		return buildTypeName;
	}

	public void setBuildTypeName(String buildTypeName) {
		this.buildTypeName = buildTypeName;
	}

	public Long getCalculateDataId() {
		return calculateDataId;
	}

	public void setCalculateDataId(Long calculateDataId) {
		this.calculateDataId = calculateDataId;
	}

	public void setCalculateTypeId(Long calculateTypeId) {
		this.calculateTypeId = calculateTypeId;
	}

	public Long getCalculateTypeId() {
		return calculateTypeId;
	}

	public void setAreaId(Long areaId) {
		this.areaId = areaId;
	}

	public Long getAreaId() {
		return areaId;
	}

	public void setBuildTypeId(Long buildTypeId) {
		this.buildTypeId = buildTypeId;
	}

	public Long getBuildTypeId() {
		return buildTypeId;
	}

	public BigDecimal getCalculateVal() {
		return calculateVal;
	}

	public void setCalculateVal(BigDecimal calculateVal) {
		this.calculateVal = calculateVal;
	}

	public void setStartTime(Date startTime) {
		this.startTime = startTime;
	}

	public Date getStartTime() {
		return startTime;
	}

	@Override
	public String toString() {
		return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
				.append("dataId", getCalculateDataId())
				.append("calculateTypeId", getCalculateTypeId())
				.append("areaId", getAreaId())
				.append("buildTypeId", getBuildTypeId())
				.append("calculateVal", getCalculateVal())
				.append("startTime", getStartTime())
				.toString();
	}
}
